From: Adel Gadllah Date: Thu, 9 Oct 2014 12:42:06 +0000 (+0200) Subject: shell-recorder: Disable unredirection while recording X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~1013^2^2~2039 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=1b3c89f32b35528cb6cb93f40ec4a04984d49a36;p=gnome-shell.git shell-recorder: Disable unredirection while recording This is required to be able to record windows that would otherwise be unredirected. https://bugzilla.gnome.org/show_bug.cgi?id=738226 --- diff --git a/src/shell-recorder.c b/src/shell-recorder.c index abf403f83..4690368ca 100644 --- a/src/shell-recorder.c +++ b/src/shell-recorder.c @@ -17,7 +17,9 @@ #include #include #include +#include +#include "shell-global.h" #include "shell-recorder-src.h" #include "shell-recorder.h" @@ -1535,6 +1537,9 @@ shell_recorder_record (ShellRecorder *recorder, recorder_update_pointer (recorder); recorder_add_update_pointer_timeout (recorder); + /* Disable unredirection while we are recoring */ + meta_disable_unredirect_for_screen (shell_global_get_screen (shell_global_get ())); + /* Set up repaint hook */ recorder->repaint_hook_id = clutter_threads_add_repaint_func(recorder_repaint_hook, recorder->stage, NULL); @@ -1583,6 +1588,9 @@ shell_recorder_close (ShellRecorder *recorder) recorder->state = RECORDER_STATE_CLOSED; + /* Reenable unredirection while we are recoring */ + meta_enable_unredirect_for_screen (shell_global_get_screen (shell_global_get ())); + /* Release the refcount we took when we started recording */ g_object_unref (recorder); }